Providing auto-guidance of a mobile machine without requiring a graphical interface display

ABSTRACT

Auto-guidance of a mobile machine is provided that does not require a graphical user interface display. Human interactions with the auto-guidance system of a mobile machine are performed solely with one or more electromechanical switches of the auto-guidance system while the mobile machine is operating. A first point for auto-guidance of a mobile machine is set by an auto-guidance system in response to a first electromechanical switch input. A second point for auto-guidance of the mobile machine is set by the auto-guidance system in response to a second electromechanical switch input after movement of the mobile machine from the first point. The auto-guidance system activates auto-guidance of the mobile machine along a path defined by the first point and the second point. The setting of the first point, the setting of the second point, and the activating are performed by one or more hardware processors.

BACKGROUND

Autopilot systems are used to control the trajectory that a vehicletravels without the human operator constantly having their hands on thesteering wheel. An autopilot system does not replace the human operatorbut instead allows the human operator to focus on a broader spectrum oftasks.

Autopilot systems require sophisticated human operators to configurethem and to interact with them using, for example, some type ofgraphical user interface display, such as a touch screen. For example,the sophisticated human operators need to read long and complicated usermanuals that describe, among other things, how to install opticalsensors, perform various operations using the graphical user interfacedisplay such as tare calibration, flow calibration, pitch/rollcalibration, weight test, enter the type of crop that will be harvested,create variety maps of the field, monitor displayed statistics, enterthe type of the vehicle, the offset from the axle to the antenna, theantenna height, the wheel base, select antenna type, elevation mask, SNRmask, RTK base station information, radio frequency, among others. Anexpert may need to be hired to assist in training the human operator onhow to interact with the graphical user interface display and on howbest to configure the autopilot system.

The autopilot systems cost in the range of $10,000 to $50,000. Theseexpensive autopilot systems come with higher end vehicles that costanywhere from $300,000 to a $1,000,000 each. Further, these higher endvehicles and their corresponding expensive autopilot systems require ahigh level of user sophistication. Only very large and profitablefarming establishments can afford these expensive autopilot systems andhigher end vehicles. These types of vehicles and autopilot systems arefrequently used in large commercial farms that have large fleets ofvehicles.

Further, due to the complex nature and expense of these conventionalautopilot systems and the vehicles, these conventional autopilot systemsare typically integrated with the vehicle at the time that the vehicleis manufactured.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and form a part ofthis application, illustrate embodiments of the subject matter, andtogether with the description of embodiments, serve to explain theprinciples of the embodiments of the subject matter. Unless noted, thedrawings referred to in this brief description of drawings should beunderstood as not being drawn to scale. Herein, like items are labeledwith like item numbers.

FIGS. 1A-1C depict three different types of rows and fields, accordingto various embodiments.

FIGS. 2A-2E depict block diagrams of various autopilot operation systemsthat do not require a graphical user interface display, according tovarious embodiments.

FIGS. 3A-3E depict various types and numbers of electromechanicalswitches, according to various embodiments.

FIGS. 4A and 4B depict various types and numbers of indicators,according to various embodiments.

FIG. 5 depicts a flowchart 500 of a method for implementingauto-guidance, according to one embodiment. According to one embodiment,the method does not require does not require a graphical user interfacedisplay.

DESCRIPTION OF EMBODIMENTS Notation and Nomenclature

Reference will now be made in detail to various embodiments of thesubject matter, examples of which are illustrated in the accompanyingdrawings. While various embodiments are discussed herein, it will beunderstood that they are not intended to limit to these embodiments. Onthe contrary, the presented embodiments are intended to coveralternatives, modifications and equivalents, which may be includedwithin the spirit and scope the various embodiments as defined by theappended claims. Furthermore, in the following Description ofEmbodiments, numerous specific details are set forth in order to providea thorough understanding of embodiments of the present subject matter.However, embodiments may be practiced without these specific details. Inother instances, well known methods, procedures, components, andcircuits have not been described in detail as not to unnecessarilyobscure aspects of the described embodiments.

Unless specifically stated otherwise as apparent from the followingdiscussions, it is appreciated that throughout the description ofembodiments, discussions utilizing terms such as “implementing,”“setting,” “engaging,” “disengaging,” “activating,” “de-activating,”“resuming,” “receiving,” “opening,” “closing,” “auto-guiding,”“locating,” “translating,” “interpreting,” “generating,” “actuating,”“performing,” “causing,” “re-activating,” “repeating,” “recording,”“guiding,” “transforming data,” “modifying data to transform the stateof a computer system,” or the like, refer to the actions and processesof a computer system, data storage system, storage system controller,microcontroller, hardware processor, such as a central processing unit(CPU), or similar electronic computing device or combination of suchelectronic computing devices. The computer system or similar electroniccomputing device manipulates and transforms data represented as physical(electronic) quantities within the computer system's/device's registersand memories into other data similarly represented as physicalquantities within the computer system's/device's memories or registersor other such information storage, transmission, or display devices.

With respect to the discussion throughout herein, it should be notedthat the terms “parallel” and “substantially parallel” are usedinterchangeably herein and meant to be synonymous. The terms “parallel”and “substantially parallel” are not meant to be construed as linearlyparallel, but instead to describe rows, lines, paths, or other entitiesthat are a substantially fixed offset distance from one another. A“fixed offset distance” or “offset by a fixed distance” betweenside-by-side parallel entities is, in practice, a “substantially fixedoffset distance” or an “offset by a substantially fixed distance” withinthe performance capability of an auto-guidance system and/or autopilotoperation system for guiding a mobile machine over the terrain. Anyvariance from being perfectly parallel/perfectly fixed in offsetdistance will be small and within several centimeters in most, if notall, instances. Thus, it is accepted that variances in terrain,variances in steering responsiveness of the mobile machine, orlimitations in navigation precision, among other factors, may causerows, paths, lines, etc. to be slightly divergent from being perfectlyparallel and, as used herein, the terms “parallel,” “substantiallyparallel,” “fixed offset,” and “substantially fixed offset” are meant toencompass these minor variances. What is meant by the term “path” hereinis a line from a first point (e.g., a beginning point) to a second point(e.g., an end point) that is not necessarily linear. That is, the pathbetween the first point and the second point may be a linear path or maybe a non-linear path that includes one or more curved portions betweenthe start point and the end point. The path between the first point andthe second point is also referred to herein as a “line,” an “AB path,”or a “path subset.” Herein, a second row, line, or path that isside-by-side with a first path may substantially parallel the first row,line, or path by maintaining a substantially fixed offset distance fromthe first row, line, or path.

Overview

Mobile machines are used to process fields, for example, by plowing,seeding, fertilizing, spraying insecticides, mowing, and harvesting.Some examples of mobile machines used in an agricultural environment aretractors, trucks, swathers, sprayer vehicles, and combines, amongothers. Some examples of implements that can be attached to the mobilemachines are plows, cultivators, cutting heads, seeders, planters,mowers, sprayers, fertilizers, rakes, balers, and wagons, among others.

The operation of the mobile machines can be complex requiring the humanoperator to be performing many tasks, such as raising and lowering boomsand starting, stopping, and monitoring various operations. Further,these mobile machines are typically very large and potentiallydangerous. The human operator must pay close attention and coordinateall of the complex tasks safely.

To simplify the human operator's job, the mobile machines may include anauto-guidance system that steers the mobile machine allowing the humanoperator to tend to other tasks such as raising and lowering booms,starting and stopping various operations. Conventional auto-guidancesystems incorporate graphical user interface displays that allow thehuman operator to communicate with the auto-guidance system. However, asdiscussed herein, conventional auto-guidance systems are very expensive,and, therefore, are used in only extremely expensive mobile machines inhighly profitable large farming establishments.

However, owners of smaller less profitable farms may also want or needan auto-guidance system. For example, an owner of a 50 acre farm in anemerging market, such as South America or Sub-Saharan Africa, may wantan auto-guidance system for their 15 year old $2500 tractor to make itfeasible or easier for their 12 year old son to operate the tractorfreeing up the older members of the family to engage in other activitiesfor making a living.

As can be seen, the owners of these smaller less profitable farms cannotafford the extremely expensive upper end mobile machines with theexpensive conventional auto-guidance systems. Further, their mobilemachines may be very old and inexpensive. Their mobile machine may nothave any auto-guidance system in it at all and it may not beeconomically or technologically feasible to add a conventionalauto-guidance system to their mobile machine. The owners may not knowEnglish and may not even be able to read their native language.Therefore, reading user manuals and interacting with a graphical userinterface is not feasible.

The main cost of conventional auto-guidance systems is the graphicaluser interface display. Therefore, various embodiments provide anautopilot operation system that does not require a graphical userinterface display. According to one embodiment, the autopilot operationsystem uses one or more electromechanical switches instead of thegraphical user interface display. Electromechanical switches are muchcheaper than graphical user interface displays. Further, variousembodiments provide for adding an auto-guidance system to a mobilemachine after the mobile machine was manufactured.

Various embodiments provide for easily adding an inexpensiveauto-guidance system to a mobile machine that was manufactured withoutan auto-guidance system. For example, various simple mechanical methodscan be used for coupling the autopilot operation system with the mobilemachine, such as a bracket, a screw, a screw hole, a male portion orfemale portion of a snap-on mounting system, a hole or a knob that canbe inserted into a hole and twisted, spare parts, and duct tape that aregenerally available. According to one embodiment, standard methods ofadherence using tools that are generally available can be used forcoupling the autopilot operation system with the mobile machine.

Further, according to one embodiment, a human operator of the mobilemachine can configure, activate and deactivate the auto-guidance systemsimply by pressing a physical button, such as an electromechanicalswitch. Therefore, as can be seen, various embodiments provideauto-guidance of a mobile machine without requiring training the humanoperator on auto-guidance, without requiring an auto-guidance userinterface, without requiring the human operator or the owner of themobile machine to have an auto-guidance skill set, without requiring thehuman operator or the owner of the mobile machine to have knowledgeabout auto-guidance. For example, as can be seen, various embodimentsenable all human interactions, conducted post manufacturing, with theauto-guidance system to be performed solely with one or moreelectromechanical switches. Further, as can be seen, various embodimentsenable performing all human interactions with the auto-guidance systemof a mobile machine solely with one or more electromechanical switchesof the auto-guidance system while operating the mobile machine, such asfarming a field. Various embodiments provide an auto-guidance systemwhere the only way to interact with the auto-guidance system while themobile machine is operating is via the one or more electromechanicalswitches. Various embodiments provide an auto-guidance system thatrequires a human operator interaction with the one or moreelectromechanical switches while the mobile machine is operating. Inother words, without a human operator interacting with the auto-guidancesystem via the one or more electromechanical switches during operationof the mobile machine, the mobile machine will operate in as if therewere no auto-guidance system (also known as “non-auto-guidance mode”).

Therefore, various embodiments provide an auto-guidance system for amobile machine without requiring a graphical user interface display, auser manual, without requiring the owner or human operator of the mobilemachine to be able to read, without requiring a sophisticated humanoperator, without requiring the human operator to understand or befamiliar with GPS/GNSS terminology, without requiring any parts of theauto-guidance system to be hardwired into the hydraulic system, withoutrequiring any of the auto-guidance system to be installed into themobile machine at the time the mobile machine is manufactured, withoutrequiring the owner to pay an expert for training, for configuring orfor interacting with the auto-guidance system, without requiring theowner or human operator to interact or configure the auto-guidancesystem beyond the use of interacting with one or more electromechanicalswitches, without requiring the owner of the mobile device to hiresomeone (also known as a “third party”) to install the auto-guidancesystem, without requiring any human to configure or interact with theauto-guidance system after the auto-guidance system has beenmanufactured beyond the use of interacting with one or moreelectromechanical switches, and without requiring an operator or anowner to know how to interact with a computer, a touch screen, or ageneralized user interface.

Fields, Rows, Paths and Set Points

There are various types of rows and fields. FIGS. 1A-1C depict threedifferent types of rows and fields, according to various embodiments.Embodiments are well suited to other types of rows and fields.

FIG. 1A depicts a top view of a rectangular field F1A where all of therows R1A, R2A, R3A, R4A, Rn−1, and Rn are straight paths. Each row R1A,R2A, R3A, R4A, Rn−1, and Rn has a respective beginning point B1A, B2A,B3A, B4A, BSA, B6A and a respective ending point E1A, E2A, E3A, E4A,E5A, E6A. The field F1A may be square or rectangular. A square isinterpreted to be a type of rectangle. The four lines that depict therectangular field F1A in FIG. 1A define the boundary BD1 of the fieldF1A. The path L1A along the first point P1A and the second point P2A isat least a subset of a row R1A. For example, the first point P1A may belocated at the beginning B1A of the row R1A or somewhere along row R1Aand the second point P2A may be located along R1A between point 1A andat or before the end E1A of the row R1A.

A current row and an immediately subsequent row are adjacent andparallel to each other. For example, rows R1A and R2A are adjacent toand parallel with each other. Rows R2A and R3A are adjacent to andparallel with each other. Rows R3A and R4A are adjacent to and parallelwith each other and so on through row Rn−1 and row Rn.

The rows R1A, R2A, R3A, R4A, Rn−1, and Rn can also be referred to as“paths.” A mobile machine can move along the turns T1A, T2A, T3A, T4A,and T5A to move from one row to the next row in the field F1A. Forexample, a mobile machine may move along turn T1A after finishing rowR1A in order to start row R2A and so on.

FIG. 1B depicts a top view of a field F1B that has one or more contouredsurfaces, according to one embodiment. Examples of a contoured surfaceare a hill, an upward slope and a downward slope. The slope may be neara tree or a creek, for example. The field F1B has rows R1B, R2B, R3B,and R4B. Each row R1B, R2B, R3B, and R4B has a respective beginningpoint B1B, B2B, B3B, and B4B and a respective ending point E1B, E2B,E3B, and E4B. A mobile machine can move along the turns T1B, T2B, T3B,and T4B to move from one row to the next row in the field F1B. Forexample, a mobile machine may move along turn T1B after finishing rowR1B in order to start row R2B and so on.

Each of the rows R1B, R2B, R3B, and R4B include a respective curved pathsubset C1B, C2B, C3B, and C4B in the vicinity of a contoured surface.The curved path subsets C1B, C2B, C3B, and C4B are each associated witha respective terrace TR1, TR2, TR3, and TR4 that are depicted withheavier lines. An entire curved path subset C1B, C2B, C3B, and C4B mayor may not be approximately at the same elevation. Instead of terracesTR1, TR2, TR3 and TR4, there may be obstacles in those locations wherethe curved path subsets C1B, C2B, C3B, and C4B avoid the obstacles,according to one embodiment. According to one embodiment, the curvedpath subsets C1B, C2B, C3B and C4B may be arbitrary deviations from whatwould have been a straight row R1B, R2B, R3B, R4B. For example, thecurved path subsets C1B-C4B may occur even when there is no obstacles orcontoured surfaces.

According to one embodiment, the first point P1B is at the beginning B1Bof the row R1B and the second point P2B are at the end E1B of the rowR1B, according to one embodiment. Therefore, the path L1B that is usedfor auto-guidance includes the entire first row R1B for the field F1B,according to one embodiment. The first point P1B is set when the mobilemachine starts the row R1B and the second point P2B is set when themobile machine has completed the same row R1B. The rows R1B, R2B, R3Band R4B may also be referred to as paths.

A current row and an immediately subsequent row are adjacent andparallel to each other. For example, rows R1B and R2B are adjacent toand parallel with each other. Rows R2B and R3B are adjacent to andparallel with each other and so on for all of the rows in the field F1B.The rows can also be referred to as “paths.”

FIG. 1C depicts a top view of a field F1C with one continuous spiralingrow C1C that starts in the middle P1C, according to one embodiment. Thespiral has paths R1C, R2C, R3C, and R4C that turn. An imaginary straightline ISL with one end located at the center P1C of the spiral C1C andthe other end P5C located on the outermost turn of the spiral C1C can beused to define the paths R1C, R2C, R3C, and R4C. For example, the firstpath R1C of the spiral C1C can start at the center P1C and end P2C wherethe imaginary straight line ISL first intersects the spiral C1C. Thesecond path R2C of the spiral C1C can start P2C where the imaginarystraight line ISL first intersects the spiral and end P3C where theimaginary line intersects the spiral C1C for a second time. The thirdpath R3C of the spiral C1C can start where the imaginary straight lineISL intersects the spiral C1C for the second time P2C and end P3C wherethe imaginary line intersects the spiral the third time and so on. Eachof the turn or path R1C, R2C, R3C, R4C can be treated as a row. Variousembodiments are well suited to drawing the imaginary straight line inother directions for the purpose of defining paths. For example, theimaginary straight line may be drawn in any direction. The imaginarystraight line was drawn perpendicularly to the left only for thepurposes of illustration.

A current path and an immediately subsequent path are adjacent andparallel to each other. For example, paths R1C and R2C are adjacent toand parallel with to each other. Paths R2C and R3C are adjacent to andparallel with to each other. Paths R3C and R4C are adjacent to andparallel with to each other and so on for all of the paths of the fieldF1C. According to one embodiment, the first point is P1C and the secondpoint is P2C. Therefore, according to one embodiment, the path L1C thatis used for auto-guidance for field F1C starts at the middle P1C of thespiral and ends at P2C.

The width of an implement defines what is known as a “swath” in a field.For example, FIG. 1A depicts the swaths S1A, S2A, S3A, S4A, S5A, and S6Aof field F1A. FIG. 1B depicts the swaths S1B, S2B, S3B of field F2B.FIG. 1C depicts the swaths S1C, S2C, S3C of field F1C. Each row or pathis located at the center of a swath since the middle of the implementwould be centered on a row as the mobile machine with the attachedimplement is moving down a row. For example, referring to FIG. 1A, rowR1A is in the middle of swath S1A, row R2A is in the middle of swathS2A. The width of the implement is used to reduce the possibility ofgaps between adjacent paths or that any portions of the adjacent pathsoverlap each other. Various embodiments are also well suited forasymmetrical implements. For example, the geometry of the asymmetricalimplement can be used to determine the orientation of a row with respectto that implement. The geometry of the asymmetrical implement can bestored where swath information is stored as described herein.

A path L1A, L1B, L1C along the first point and the second point may be astraight path, as depicted in FIG. 1A, or a non-straight path, asdepicted in FIG. 1B or FIG. 1C. According to one embodiment, a straightpath provides a trajectory for the auto-guidance system. According toone embodiment, either a straight path or a non-straight path provides apattern to follow for a subsequent path that is the distance of animplement from the previous path where the two paths are adjacent to andparallel with each other.

Autopilot Operation System that does not Require a Graphical UserInterface Display

FIGS. 2A-2E depict block diagrams of various autopilot operation systemsthat do not require a graphical user interface display, according tovarious embodiments.

FIG. 2A depicts a block diagram of an autopilot operation system 200Athat is part of a mobile machine WM1, according to one embodiment.

As depicted, the mobile machine WM1 is a tractor. However, embodimentsare well suited for other types of mobile machines used in anagricultural environment, such as trucks, swathers, sprayer vehicles,and combines, among others.

The autopilot operation system 200A depicted in FIG. 2A includes anauto-guidance system 202A and an electromechanical switch 201A that arecommunicatively coupled with each other. Embodiments are well suited forusing a single electromechanical switch 201A or more than oneelectromechanical switch, as will become more evident.

FIGS. 2B-2C depict block diagrams of autopilot operation systems withvarious types of communication coupling between the auto-guidance systemand the electromechanical switch, according to various embodiments. Forexample, FIG. 2B depicts an autopilot operation system 200B thatincludes an electromechanical switch 201B and an auto-guidance system202B. As depicted in FIG. 2B, the electromechanical switch 201B arecoupled directly with the auto-guidance system 202B. As depicted in FIG.2B, the switch 201B is coupled directly with the auto-guidance system202B using a communications line 204B. The communications line 204B maybe a CAN (Controller Area Network) bus.

Referring to FIG. 2C, an autopilot operation system 200C can alsoinclude translation-logic 203C (also known as“signal-to-can-message-translation-logic” or “CAN translation-logic”)that translates the electromechanical switch inputs from anelectromechanical switch 201C into CAN (Controller Area Network)messages that are delivered to the auto-guidance system 202C over a CANbus of the mobile machine. The CAN translator logic 203C can translate asignal from the electromechanical switch 201C into a CAN message thatthe auto-guidance system 202C is capable of interpreting and respondingto appropriately. The CAN translation-logic 203C can be between theauto-guidance system 202C and the electromechanical switch 201C asdepicted in FIG. 2C. Although FIG. 2C depicts the translator logic 203Coutside and between the mechanical switch 201C and the auto-guidancesystem 202C, various embodiments are well suited to the translator logicbeing inside of the mechanical switch.

Although CAN messages may be used, embodiments are well suited for othertypes of communications, such as RS-232, transmission communicationprotocol/internet protocol (TCP/IP), Wi-Fi or Bluetooth.

FIG. 2D depicts a block diagram of an autopilot operation system 200D ofa mobile machine that does not require a graphical user interfacedisplay, according to one embodiment.

The autopilot operation system 200D includes set-first-point-logic 210D(also referred to as “first-point-auto-guidance-system-setting-logic”),set-second-point-logic 220D (also referred to as“second-point-auto-guidance-system-setting-logic”),path-definition-logic 230D (also referred to as“definition-of-path-between-first-point-and-second-point-logic”), andauto-guidance-activation-logic 240D (also referred to as“auto-guidance-system-activating-logic”). The autopilot operation system200D can optionally include straighten-path-logic 280D (also referred toas “straighten-path-between-first-point-and-second-point-logic”). Theset-first-point-logic 210D and the set-second-point-logic 220D arecoupled with the path-definition-logic 230D. The path-definition-logic230D is coupled with the auto-guidance-activation-logic 240D. Theautopilot operation system 200D may optionally include hardware 250Dthat includes one or more hardware processors 251D and one or more ofhardware memory 252D. Auto-guidance system 202D comprises some or all oflogic 210D, logic 220D, logic 230D, logic 240D, and hardware 250D, andmay additionally include logic 280D. Autopilot operation system 200D isan example of a special purpose computer system. In some embodiments,autopilot operation system 200D may further include one or more switches201.

The set-first-point-logic 210D sets a first point for auto-guidance ofthe mobile machine in response to receiving a first electromechanicalswitch input. The set-second-point-logic 220D sets a second point forauto-guidance of the mobile machine in response to receiving a secondelectromechanical switch input after movement of the mobile machine fromthe first point. The path-definition-logic 230D defines a path along thefirst point and the second point. The auto-guidance-activation-logic240D activates auto-guidance of the mobile machine along the path.

The autopilot operation system 200D can optionally include path or rowstraightening logic (also known as “straighten-path-logic 280D”) that,for example, analyzes the Global Positioning System (GPS) or GlobalNavigation Satellite System (GNSS) locations between the first point andthe second point, determines based on the analysis whether the humanoperator intended to drive in a straight path, determines a straightpath if the analysis indicates the intention was to drive a straightpath, or determines to use the actual GPS or GNSS locations if thedetermination was to not drive a straight path, and if a straight pathis determined, uses the determined straight path as the path between thefirst point and the second point for the purposes of auto-guidance.

A threshold can be used to determine whether to straighten the path. Forexample, the system 200D could determine whether the curve wasintentional based on whether the side-to-side offset is greater thansome significant proportion of the implement's width, or if thecurvature of the deviation was greater than some threshold. An exampleof a threshold is approximately 2 meters with a range of approximately1.5 meters to 2.5 meters. Other smaller or larger thresholds and rangesare possible and anticipated.

The straighten-path-logic 280D may be a part of logic 230D, as depictedin FIG. 2D, or separate from logic 230D. A variation in a straight pathbetween the first point and second point may be automaticallystraightened by straightening logic 280D, for example, when thevariation from does not exceed the predetermined threshold.

Embodiments described herein may be implemented with any type ofautopilot operation system. For example, FIG. 2E depicts an autopilotoperation system 200E of a mobile machine that does not require agraphical user interface display, according to one embodiment. Theautopilot operation system 200E can include features from one or more of200A, 200B, 200C, or 200D. As depicted in FIG. 2E, the autopilotoperation system 200E includes a case 210E with two opposing sides 211Eand 212E. In one embodiment, the autopilot operation system 200E couldinclude 200A, 200B, or 200C, for example, inside of the case 210E.Alternatively, the case 210E could include just the friction bearingswhile the other parts of the autopilot operation system are locatedelsewhere, as discussed herein. In yet another embodiment, the case 210Ecould include the friction bearings and one or more electromechanicalswitches. Various parts of the autopilot operation system cancommunicate via wired communications or wireless communications. Forexample, parts that are located inside of the case 210E couldcommunicate using wired or wireless communications with other parts ofthe autopilot operation system that are located elsewhere.

As depicted in FIG. 2E, one side 212E of the case 210E is coupled with astabilizing brace 220E while the other side 211E of the case 210E isabutted against the steering wheel 230E of the mobile machine WM1. Thebrace 220E holds case 210E in place against the outer surface of thewheel 230E. A lever, according to one embodiment, is coupled with thebrace 220E to move the case 210E so that side 211E is abutted againstthe steering wheel 230E and to move the case 210E away from the steeringwheel 230E.

The autopilot operation system 200E, according to one embodiment,includes friction bearings, such as wheels or balls, which press againstthe outer surface of the wheel 230E. The friction bearings may partiallywrap around the outer surface of the wheel 230E. The case 210E may becoupled with a vice scrip wrench that is used to securely press thefriction bearings against the outer surface of the wheel 230E. Theauto-guidance system 202A-202C of the autopilot operation system 200Edirects the friction bearings, according to one embodiment, to turnclockwise or counter clock wise. When the friction bearings turnclockwise, the wheel 230E will turn to the right and when the frictionbearings turn counter clockwise, the wheel 230E will turn to the left.

According to another embodiment, the autopilot operation system may usefriction bearings that are abutted against the shaft of the steeringwheel instead of against the steering wheel itself. According to otherembodiments, the autopilot operation system may control the steering byphysically connecting with or interacting with a hydraulic steeringsystem of the mobile machine.

According to one embodiment, the autopilot operation system 200A-200Eobtains power from the battery of the mobile machine or from anotherbattery.

Various methods can be used to couple an autopilot operation system200A-200E with a mobile machine. For example, the autopilot operationsystem could be coupled with a brace, as depicted in FIG. 2E, on aswitch panel (also known as a “console”), on the floor, on the steeringwheel, on a joy stick. The friction bearings could be abutted againstthe steering wheel or against the steering wheel shaft.

Various simple mechanical methods of coupling can be used for couplingthe autopilot operation system with the mobile machine, such as abracket, a screw, or the like.

An autopilot operation system 200A, 200B, 200C, 200D, 200E does notrequire a graphical user interface display, according to variousembodiments. Further, the various features depicted and/or described inthe context of FIGS. 2A-2E can be combined or used separately to providean autopilot operation system. Any of the auto-guidance systemsdescribed herein, could be implemented as an auto-guidance system 202D.

The blocks that represent features in FIGS. 2A-2E can be arrangeddifferently than as illustrated, and can implement additional or fewerfeatures than what are described herein. Further, the featuresrepresented by the blocks in FIGS. 2A-2E can be combined in variousways. A system, as depicted in FIGS. 2A-2E, can be implemented usingsoftware, hardware, hardware and software, hardware and firmware, or acombination thereof. Further, unless specified otherwise, variousembodiments that are described as being a part of a system depicted inFIGS. 2A-2E, whether depicted as a part of the system or not, can beimplemented using software, hardware, hardware and software, hardwareand firmware, or a combination thereof.

Operations

Examples of operations include engaging autopilot, disengagingautopilot, activating autopilot, de-activating autopilot, resumingautopilot, setting a first point, setting a second point, and nudgingthe movement of the mobile machine closer to a desired row or path.

According to one embodiment, “engaging” or “engaged” means that theauto-guidance is turned on but not actively performing auto-guidance.According to one embodiment “active” means the auto-guidance is on andperforming auto-guidance. The nudge operation can be used, for example,to avoid over steering with the manual steering wheel by slightly moving(also referred to as “nudging”) the mobile machine to the left or theright. Resuming means re-activating autopilot that was previouslyde-activated. For example, autopilot may be de-activated at or near theend of a row. According one embodiment, deactivation can be performedautomatically, even without a human operator interacting with an electromechanical switch, in response to detecting that the human operator hasstarted to turn the wheel. Autopilot may be resumed after the humanoperator turns the work machine around and approaches the beginning of asubsequent row or path. Activation could be interpreted as a resumeafter the autopilot has been de-activated.

Electromechanical Switch

An electromechanical switch may be any type of mechanical mechanism thatcan be physically actuated from one position to another position toclose and/or open an electrical circuit for setting a firstelectromechanical switch input and a second electromechanical switchinput as described herein. For example the electromechanical switch maybe, among other things, a physical button, physical lever, physicalpedal, or a physical dial that a human operator can physically interactwith by, for example, pushing, moving, or turning. An electromechanicalswitch could be an off the shelf electromechanical switch. According toone embodiment, a single electromechanical switch or more than oneelectromechanical switch can be used to initiate any operation, asdescribed herein, by generating an electromechanical switch input. Inone embodiment the electromechanical switch has at least one set ofcontacts, connected to an external circuit or circuits, which can beopened and closed using manual movement initiated by a human. Actuationof an electromechanical switch changes a state of the switch (e.g.,completes or opens a circuit). An electrical signal is generated inresponse to the completion of the circuit. The generated electricalsignal is an example of an electromechanical switch input.

An electromechanical switch can be located in various places of a mobilemachine. For example, an electro mechanical switch may be part of anautopilot operation system 200E, as depicted in FIG. 2E, such that partof it is inside of the case 210E and part of it is exposed for humaninteraction. An electromechanical switch may be located on the floor, onthe steering wheel, on a joystick, or on a switch panel (also known as a“console”). The electromechanical switch may be a pedal on the floor, abutton or lever on a steering wheel, a joystick or on the console of themobile machine. The electromechanical switch may be located in apreviously unused area of the switch panel. The unused area is alsoknown as a “knock out” of the switch panel. The one or moreelectromechanical switches can be used to perform various operationsdescribed herein.

FIG. 3A depicts a single electromechanical switch 301A, according to oneembodiment. In the event that a single electromechanical switch 301Athat is, for example, a physical pedal or physical button, the pedal orbutton can be physically pressed to set the first point. The pedal orbutton can be held down as the mobile machine moves from the first pointto the second point and released when the mobile machine is at thesecond point. Releasing the pedal or button can set the second point. Inanother example, referring to FIGS. 1A and 1B, a quick press and releaseof the single electromechanical switch 301A can be used to set the firstpoint. That same quick press and release that is used to set the firstpoint or a previous quick press and release of the singleelectromechanical switch 301A could be used to engage the auto-guidance.Still referring to FIGS. 1A and 1B, another quick release of the singleelectromechanical switch 301A can be used to set the second point.Referring to FIG. 1C, physically holding the single electromechanicalswitch 301A down into a locked state can be used for recording a pathalong a first point and second point. In one embodiment, a quick pressand release, as described herein, takes less than three seconds.

FIG. 3B depicts two electromechanical switches 301B and 302B, accordingto one embodiment. In this case, one electromechanical switch 301B canbe used to engage and disengage the autopilot and a secondelectromechanical switch 302B can be used to set the first point and thesecond point by physically toggling the switches or by quickly pressingand releasing the switches. Actuating the second electromechanicalswitch 302B can engage auto-guidance at the same time that the firstpoint is set. In another example, a first point can be set by physicallypressing and holding a button down and the second point can be set byphysically releasing the button. In yet another example, the first pointcan be set by one quick press and release and the second point can beset by another quick press and release of the button. Engage anddisengage can be performed in a similar manner. In another example, oneelectromechanical switch 301B can be used to set the first point and theother electromechanical switch 302B can be used to set the second point.In still another example, one electromechanical switch 301B can be usedto set both the first point and the second point, as discussed herein,and the other electromechanical switch 302B could be used for a nudgeoperation. The nudge operation can be used, for example, by an operatorto make manual steering adjustments to the otherwise autopilotoperation. Assuming that the electromechanical switch 302B is a lever,the lever could be physically moved in one direction to nudge movementof the mobile machine to the left and physically moved in the otherdirection to nudge the movement of the mobile machine to the right. Adial may be used instead of a lever for the nudge operation.

FIG. 3C depicts three electromechanical switches 301C, 302C, and 303C,according to one embodiment. In this case, one electromechanical switch301C can be used to engage and disengage the autopilot, a secondelectromechanical switch 302C can be used to set the first point and thesecond point, a third electromechanical switch 303C can be used for thenudge operation.

FIG. 3D depicts two electromechanical switches 300D and 301D, accordingto one embodiment. One of the electromechanical switches 300D is a dialwith positions 302D, 303D, 304D, 305, and 306D where each position302D-306D can be used to specify an operation. Embodiments are wellsuited to more or fewer positions for the dial. Examples of operations302D-306D are set a first point, set a second point, engage, disengage,and nudge. The other switch 301D may be a button or lever, for example,to actuate the operation. Assuming that the electromechanical switch301D is a lever, physically moving the lever in one direction can startthe selected operation and physically moving the lever in the otherdirection can stop the operation. Further, assuming that theelectromechanical switch 301D is a lever, the lever could be physicallymoved in one direction to nudge movement of the mobile machine to theleft and physically moved in the other direction to nudge the movementof the mobile machine to the right.

FIG. 3E depicts two electromechanical switches 300E and 301E. One of theelectromechanical switches 300E is a lever with positions 302E, 303E,304E, 305E, and 306E where each position 302E-306E can be used tospecify an operation, as discussed herein. The human operator can selecta position by physically moving the lever to that position. Embodimentsare well suited to additional or fewer positions for the lever. Theother electromechanical switch 301E may be, for example, a button or alever to engage the operation. Assuming that the electromechanicalswitch 301E is a lever, physically moving the lever in one direction canengage the selected operation and physically moving the lever in theother direction can disengage the operation. Further, assuming that theelectromechanical switch 301E is a lever, the lever could be physicallymoved in one direction to nudge movement of the mobile machine to theleft and physically moved in the other direction to nudge the movementof the mobile machine to the right.

According to one embodiment, the electromechanical switches depicted inFIGS. 3A-3E are part of an autopilot operation system 200E (FIG. 2E).For example, a human operator of the mobile machine can physicallyinteract with a portion of one or more electromechanical switches thatis exposed outside of the case 210E.

The dial or the lever could also have positions for activate,de-activate, and resume. According to one embodiment, an activationelectromechanical switch or an activate position for a dial or lever canbe interpreted as resume, for example, after the autopilot wasde-activated. One of a plurality of multiple electromechanical switchescould be used for a resume operation.

Any action, such as actuating an electromechanical switch, that sets afirst point could be used to engage the auto-guidance, for example,prior to setting the first point.

Controller Area Network (CAN) Messages

The electrical signals generated as the result of the one or moreelectromechanical switches can be translated into CAN messages. Variousoperations as discussed herein can be translated into and/orcommunicated using CAN messages. For example, the engage autopilot, thedisengage autopilot, activate autopilot, deactivate autopilot, resumeautopilot, set first point, set second point, and nudge operations caneach be translated into respective CAN messages by CAN translator logic203C. The respective CAN messages can be delivered to the auto-guidancesystem 202B, 202C over a CAN bus 204B, 204C of the mobile machine.

In another example, the implement attached to the work machine maytransmit a CAN message with the implement's width to the autopilotoperation system.

According to one embodiment, the mobile machine includes a CAN bus thatcan be used to transmit “CAN messages” from one entity to another. Forexample, the CAN bus can transmit a CAN message from translator logic203C to an auto-guidance system 202C or from an implement to anautopilot operation system or an auto-guidance system.

CAN messages can also be transmitted wirelessly. For example, animplement can transmit a CAN message that includes the implement's widthwirelessly to an autopilot operation system or an auto-guidance system.

Although CAN messages may be used, embodiments are well suited for othertypes of communications, such as RS-232, transmission communicationprotocol/internet protocol (TCP/IP), Wi-Fi or Bluetooth.

Indicator

According to various embodiments, the autopilot operation system caninclude at least one visual indicator or audio indicator pertaining tostatus of an auto-guidance system that performs the auto-guidance of themobile machine. The human operator can use the information to determinehow to operate the mobile machine. The one or more indicators mayinclude one or more visual indicators, such as a light, or one or moreaudio indicators, such as a speaker. The light may be a light emittingdiode (LED). One or more indicators may provide information pertainingto any one or more of the various operations and/or electromechanicalswitches, as discussed herein. One indicator may be used to provideinformation for only one operation and/or one electromechanical switch.One indicator may be used to provide information for a plurality ofoperations and/or plurality of electromechanical switches.

FIG. 4A depicts a single indicator 400A to provide informationpertaining to the status of the operations, according to one embodiment.For example, a single indicator 400A that is a light associated with oneor more electromechanical switches could be one color after the firstpoint is set and a different color after the second point is set.Alternatively, the light 400A of the single electromechanical switch maybe flashing when one of the points is set and solid when the other ofthe points is set. In yet another example, different patterns offlashing or sounds can be used to indicate different statuses. Forexample, one pattern of flashing or sound may indicate that the firstpoint has been set, a second pattern of flashing or sound may indicatethat the second point has been set, a third pattern of flashing or soundmay indicate that the end of a row is approaching, and so on.

In yet another example, the single light indicator 400A may be off whenthe autopilot operation system is off, yellow when the autopilotoperation system is deactivated, green when the autopilot operationsystem is activated, red or flashing when there is an error with theautopilot operation system, starts to flash blue after the first pointis set and continues to flash blue while the mobile machine moves fromthe first point to the second point, and is a solid blue after thesecond point is set.

In still another example, a single indicator 400A that is a speaker canbe used to produce audio such as “autopilot operation system isdisengaged,” “autopilot operation system is engaged,” “autopilotoperation system activated,” “autopilot operation system deactivated,”“autopilot operation system resumed,” “autopilot operation systemerror,” “first point set,” “second point set,” “end of row approaching,”“at end of row,” and/or “passed end of row.” Various patterns of soundsor beeps could be used instead or in addition to words, phrases orvisual indications. For example, no sound could mean disengaged, onebeep could mean engaged, and so on.

Various embodiments are also well suited to using multiple indicators.FIG. 4B depicts multiple indicators 401B, 402B, 403B, and 404B,according to one embodiment. For example, one indicator 401B can pertainto whether the autopilot operation system is engaged or disengaged, asecond indicator 402B can pertain to whether there is an error with theautopilot operation system, a third indicator 403B can indicate whetherthe first point was set, and a fourth indicator 404B can indicatewhether the second point was set.

An indicator may be located near an electromechanical switch. Forexample, the single indicator depicted in FIG. 4A may be located nearthe single electromechanical switch of FIG. 3A. In another example, anindicator may be located near the electromechanical switch that theindicator provides information for. More specifically, anengage/disengage indicator may be located near an engage/disengageelectromechanical switch, a set point indicator maybe located near a setpoint electromechanical switch and so on.

These are just examples of the types and numbers of indicators that canbe used to provide information. Various embodiments are well suited forother types of information, other types of indicators, other numbers ofindicators, and other types of colors and other words, phrases and/orpatterns of sounds that can be heard from a speaker.

Although one or more indicators may be used according to variousembodiments, one or more indicators are not required. For example, thehuman operator can feel when the mobile machine is or is not inauto-pilot mode.

Recorded Information

Information describing a path L1A, L1B, L1C (FIGS. 1A-1C) can berecorded as the mobile machine moves from the first point to the secondpoint. An example of the recorded information is GPS or GNSS locationsof the mobile machine (e.g., every foot, two feet, three feet, ten feet,etc.) as it moves from the first point to the second point. The recordedinformation can include the guidance paths, such as L1A, L1B, L1C, andthe field boundaries, such as bd1. The information can be recorded inthe autopilot operation system's hardware memory 252D. The informationmay be recorded remotely, for example, in hardware memory that can beaccessed with a data connection. The hardware memory may be on the cloudinstead of part of the autopilot operation system. The recordedinformation can be used to autopilot the mobile machine for subsequentpaths in a manner that all of the paths are parallel with respect toeach other and avoid gaps between two adjacent paths and avoid overlapsbetween two adjacent paths. The recorded information can also includethe width of an implement, such as a plow, sprayer, planter or wagon,where the width is used as the swath of the paths in a field. The widthof the implement is used to reduce the possibility of gaps betweenadjacent paths or that any portion of the adjacent paths overlappingeach other.

Previously recorded information that describes, for example, theboundary of a field can be used. For example, the boundary informationcan be used to determine that the end of a row is approaching, that theend of a row has been reached, or the end of the row has been passed.Previously recorded information can be uploaded into the hardware memory252D, for example, from a memory stick or from other type of memory.

Previously recorded information defining the boundary of a field, a pathalong a first point and second point, or paths that were worked duringprevious activities in a field can be stored and maintained in thehardware memory 252D of the mobile machine. Plowing a field is anexample of a previous activity with respect to planting a field,spraying a field, or harvesting a field. Previously recorded informationthat is stored in the hardware memory 252D could then be availablewithout uploading it.

According to one embodiment, after recorded information is available fora field, the mobile machine can perform auto-guidance without setting afirst point, setting a second point or defining a path along the firstpoint and second point. For example, the mobile machine can performauto-guidance simply by activating one electromechanical switch afterthe recorded information for the field is available.

Swath

The width of an implement defines what is known as a “swath” in a field.For example, FIG. 1A depicts the swaths S1A, S2A, S3A, S4A, S5A, and S6Aof field F1A. FIG. 1B depicts the swaths S1B, S2B, S3B and S4B of fieldF2B. FIG. 1C depicts the swaths S1C, S2C, S3C of field F1C. Each row orpath is located at the center of a swath since the middle of theimplement would be located on a row or path as the mobile machine withthe attached implement is moving down the row or path. For example,referring to FIG. 1A, row R1A is in the middle of swath S1A, row R2A isin the middle of swath S2A. The width of the implement is used to reducethe possibility of gaps between adjacent paths or that any portion ofthe adjacent paths overlap each other.

The width of the implement, which is used to define the swath of afield, can be determined in several different ways. For example, thewidth of the implement can be uploaded into the mobile machine'shardware memory 252D using a memory stick. In another example, the humanoperator can manually line the implement up for the second path rightnext to the first path. GPS or GNSS positioning information can then beused to determine the width of the implement. More specifically,positioning information of where the first path, such as path R1A, andthe second path, such as path R2A, can be used to determine that thewidth of the implement is the distance between the two adjacent pathsR1A and R2A. The human operator may initiate determination of theimplement width, for example, by actuating an electromechanical switch,or the autopilot operation system may automatically determine the swath,for example, when the GPS or GNSS positioning information indicates thatthe attached implement mobile machine is located at the beginning B2A ofthe second path or after the beginning B2A of the second path. Similarprocessing can be performed for fields depicted in FIGS. 1B and 1C formanually lining the implement up next to a previous path when performinga current path. According to one embodiment, an entire second path couldbe recorded as a part of determining an implement's width.

In another example, the implement may transmit a message to theautopilot operation system with the implement's width. According to oneembodiment, the message is a CAN message. The message with theimplement's width may be transmitted, for example, wirelessly or over aCAN bus.

Example Description of Operation

With reference to FIGS. 1A, 2A, and 3B, consider an embodiment where amobile machine, tractor WM1 in this example, enters field F1A atbeginning point B1A. At B1A the user interacts with switch 301B, such asby depressing it, to turn on the auto guidance system. At the same time,the user interacts with switch 302B, such as by depressing it, in orderto set a first point P1A for auto-guidance of tractor WM1. The userdrives the tractor along the path L1A and at point P2A interacts withswitch 302B a second time, such as by depressing it again, to set asecond point for auto-guidance of tractor WM1. An auto guidance system202 receives the switch inputs made by the user, and records ageographic position associated with the first point and a geographicposition associated with the second point (and may record locations ofpoints in between). Upon the setting of the second point, theauto-guidance system activates auto-guidance of tractor WM1 along pathL1A based by continuing to follow a first path along a path that that isdefined by the first point and the second point. At end point E1A, theuser interacts with switch 301B to disengage the auto-pilot, and thenmanually makes turn T1. In some embodiments, the user may then repeatthe process to establish auto guidance along a path that follows rowR2A. In some embodiments, after deactivating the auto-guidance oftractor WM1 the user may manually make turn T1, and at beginning pointB2A interact with switch 301B, such as by depressing it again or perhapstwice in quick succession, in order to cause the auto-guidance system202 to resume the auto-guidance along a second path that is offset at afixed distance from and adjacent to the first path—e.g., along path thatsubstantially overlays row R2A.

According to one embodiment, auto-guidance is deactivated automaticallyin response to detecting that the human operator is turning the wheelwithout the human operator interacting with one or moreelectromechanical switches. According to one embodiment, auto-guidanceis activated, deactivated and resumed automatically in response todetecting that the mobile machine is at an appropriate location withrespect to a boundary of the field without the human operatorinteracting with one or more electromechanical switches. For example,once recorded information for the field is available, the auto-guidancecan be turned on, then the auto-guidance can be activated automaticallyor resumed automatically when the beginning of a row is encountered anddeactivated automatically when the mobile machine encounters the end ofthe rows.

Method for Implementing Auto-Guidance

FIG. 5 depicts a flowchart 500 of a method for implementingauto-guidance, according to one embodiment. According to one embodiment,the method does not require does not require a graphical user interfacedisplay.

At 510, the method begins.

At 520, human interactions with an auto-guidance system of a mobilemachine are performed solely with one or more electromechanical switchesof the auto-guidance system while the mobile machine is operating.

For example, all of the human operator's interactions with theauto-guidance system 200A-200E are performed solely with one or moreelectromechanical switches, such as those depicted in FIGS. 3A-3E, ofthe auto-guidance system 200A-200E while the mobile machine isoperating. More specifically, the human operator interacts with the oneor more electromechanical switches to set a first point, to set a secondpoint, and to activate the auto-guidance system, as discussed herein.The human operator interacts with the one or more electromechanicalswitches by physically pushing, moving, or turning the electromechanicalswitch depending on whether the electromechanical switch is, forexample, a physical button, physical lever, or a physical knob. Further,the setting of the first point, the setting of the second point and theactivation of the auto-guidance system are the only activities that arerequired for providing auto-guidance of the mobile machine while it isoperating, for example, in a field F1A, F1B, F1C, as discussed herein.In yet another embodiment, all human interactions with the auto-guidancesystem are performed solely with the electromechanical switches postmanufacturing of the auto-guidance system 200A-200E.

At 530, in response to a first electromechanical switch input, a firstpoint for auto-guidance of a mobile machine is set by an auto-guidancesystem.

For example, the first electromechanical switch input may be receiveddue to actuation of a single electromechanical switch as depicted inFIG. 3A or due to actuation of one of multiple electromechanicalswitches as depicted in FIG. 3B or FIG. 3C, as discussed herein.

In the case of a single electromechanical switch as depicted in FIG. 3A,the first electromechanical switch input is a closing of a singleelectromechanical switch that is received and used to set the firstpoint. According to one embodiment, the single electromechanical switchis a foot switch and the first electromechanical switch input isreceived when the foot switch is in a closed position. The foot switchis located on a floor of the mobile machine, according to oneembodiment. According to one embodiment, the single electromechanicalswitch is a hand switch and the first electromechanical switch input isreceived when the hand switch is in a closed position. The hand switchis located on a steering wheel of the mobile machine, according to oneembodiment. According to one embodiment, the single electromechanicalswitch is installed in a switch panel of the mobile machine and thefirst electromechanical switch input is received from the singleelectromechanical switch installed in the switch panel.

In the case of multiple electromechanical switches as depicted in FIG.3B or FIG. 3C, the first electromechanical switch input is set when afirst electromechanical switch is actuated. According to one embodiment,the first electromechanical switch input is generated in response toactuation of the first electromechanical switch. Examples of actuatingare pressing and holding, quick press and release, moving anelectromechanical switch into a locked position, and moving a lever. Anexample of moving an electromechanical switch into a locked position ispressing the electromechanical switch harder than when it is pressed,for example, to set a first point or a second point.

The set-first-point-logic 210D (FIG. 2D) sets a first point forauto-guidance of the mobile machine in response to receiving a firstelectromechanical switch input.

A single indicator, as depicted in FIG. 4A, or one of multipleindicators, as depicted in FIG. 4B, may output information indicatingthat the first point has been set, as discussed herein.

At 540, in response to a second electromechanical switch input aftermovement of the mobile machine from the first point, a second point forauto-guidance of the mobile machine is set by the auto-guidance system.

For example, the second electromechanical switch input may be receiveddue to actuation of a single electromechanical switch as depicted inFIG. 3A or due to actuation of one of multiple electromechanicalswitches as depicted in FIG. 3B or FIG. 3C, as discussed herein.

In the case of a single electromechanical switch as depicted in FIG. 3A,the second electromechanical switch input is an opening of the singleelectromechanical switch that is received and used to set the secondpoint. According to one embodiment, the second electromechanical switchis a foot switch and the second electromechanical switch input isreceived when the foot switch is in an open position. According to oneembodiment, the second electromechanical switch is a hand switch and thesecond electromechanical switch input is received when the hand switchis in an open position. According to one embodiment, the singleelectromechanical switch is installed in a switch panel and the secondelectromechanical switch input is received from the singleelectromechanical switch installed in the switch panel.

In the case of multiple electromechanical switches as depicted in FIG.3B or FIG. 3C, the second electromechanical switch input is set when asecond electromechanical switch is actuated. Examples of actuationinclude releasing a button that was previously pressed and held down,quick press and release, moving an electromechanical switch into alocked position, and moving a lever. According to one embodiment, thesecond electromechanical switch input is generated in response toactuation of the second electromechanical switch.

The set-second-point-logic 220D (FIG. 2D) sets a second point forauto-guidance of the mobile machine in response to receiving a secondelectromechanical switch input after movement of the mobile machine fromthe first point.

A single indicator, as depicted in FIG. 4A, or one of multipleindicators, as depicted in FIG. 4B, may output information indicatingthat the second point has been set, as discussed herein.

At 550, auto-guidance of the mobile machine is engaged by theauto-guidance system along a path defined by the first point and thesecond point. For example, a path L1A, L1B, L1C may be defined along thefirst point P1A, P1B, P1C and the second point P2A, P2B, P2C as depictedin FIGS. 1A-1C. The path-definition-logic 230D (FIG. 2D) defines thepath L1A, L1B, L1C along the first point P1A, P1B, P1C and the secondpoint P2A, P2B, P2C, according to one embodiment, as depicted in FIGS.1A-1C. The path goes through the first point and the second point. Thepath may be defined as being between the first point and the secondpoint, as discussed herein. The auto-guidance-system-engaging-logic 240Dengages auto-guidance of the mobile machine along the path L1A, L1B,L1C. After the second point P2A, P2B, and P2C is set, the auto-guidancesystem can auto-guide the mobile machine.

In some embodiments, the auto-guidance system automatically straightensone or more recorded variations in a path defined by the first point andthe second point if the recorded variation(s) from an otherwise straightpath between the first point and the second point is/are within apredetermined threshold. Straighten-path-logic 280D accomplishes thisstraightening in some embodiments.

Further, various embodiments provide for deactivating the auto-guidanceof the mobile machine with respect to a first path R1A (FIG. 1A), R1B(FIG. 1B) of a field; and resuming the auto-guidance along a second pathR2A (FIG. 1A), R2B (FIG. 1B) that is parallel with/offset at a fixeddistance from and adjacent to the first path R1A (FIG. 1A), R1B (FIG.1B). For example, referring to FIG. 1A, after the second point P2A isset, the auto-guidance system can auto-guide the mobile machine from thesecond point P2A to the end E1A of the row R1A. When the end E1A of therow R1A is approaching, the one or more indicators (FIGS. 4A-4B) canindicate that the end E1A of row R1A is approaching and thatauto-guidance can be terminated. The human operator can take manualcontrol of driving the mobile machine and manually turn the mobilemachine around at turn T1A. When the mobile machine approaches locationE2A, the human operator can manipulate an electromechanical switch tore-engage the auto-guidance system. Then the auto-guidance system canauto-guide the mobile machine for the second row R2A. The process cancontinue for all of the rows of the field F1A depicted in FIG. 1A.

In another example referring to FIG. 1B, after the second point P2B isset at the end E1B of the first row R1B, the auto-guidance can beterminated. The human operator can take manual control of driving themobile machine and manually turn the mobile machine around at turn T1B.The human operator can manipulate an electromechanical switch tore-activate the auto-guidance system once the human operator has locatedthe mobile machine at the beginning B2B of the second row R2B, which isa swath width below the first row R1B. Then the auto-guidance system canauto-guide the mobile machine for the second row R2B. The process cancontinue for all of the rows of the field F1B depicted in FIG. 1B.

Referring to FIG. 1C, after the second point P2C is set, theauto-guidance system can auto-guide the mobile machine for the rest ofthe continuous spiraling row C1C.

Various embodiments provide for recording information describingmovement of the mobile machine along the path L1A, L1B, L1C for a firstpath R1A, R1B, R1C of a field F1A, F1B, F1C, for example, in hardwarememory 252D of the autopilot operation system; and automatically guidingthe mobile machine, based on the recorded information in the hardwarememory 252D, along a subsequent path R2A, R2B, R2C that is adjacent toand parallel with/offset at a fixed distance from the first path R1A,R1B, R1C.

According to one embodiment, the path L1A (FIG. 1A) is a straight pathand provides for recording information describing movement of the mobilemachine along the straight path. The straight path can be at least asubset of the first path of the field. For example referring to FIG. 1A,the path L1A is a subset of the first row R1A of the field. The movementof the mobile machine along the straight path that is a subset of thefirst row can be stored in the hardware memory 252D of the autopilotoperation system. The path may be an entire row or entire path.

According to one embodiment, the path L1B (FIG. 1B), L1C (FIG. 1C) is anon-straight path and provides for recording information, in thehardware memory 252D of the autopilot operation system, describingmovement of the mobile machine along the non-straight path, where thesecond point P2B, P2C is located at the end E2B, E2C of the first pathR1B, R1C of the field F1B, F1C.

According to one embodiment, the path L1A is associated with a firstpath R1A of a field F1A and various embodiments provide for deactivatingthe auto-guidance for a current path R1A of the field; re-activating(also referred to as “resuming”) the auto-guidance for a subsequent pathR2A of the field, wherein the current path and the subsequent path areadjacent to each other; and repeating the deactivating and there-activating until all paths R1A-Rn of the field have been operated onby the mobile machine, where all of the paths R1A-Rn of the field areparallel with/offset at a fixed distance from each other based on thepath. When path R2A is the current path, path R3A is the subsequentpath. When path R3A is the current path, then path R4A is the subsequentpath and so on until Rn−1 is the current path and Rn is the subsequentpath. Similar processing can be performed for field F1B, depicted inFIG. 1B, where L1B is the path. When R1B is the current path, R2B is thesubsequent path. When R2B is the current path, R2B is the subsequentpath and so on for all of the paths R1B, R2B, R3B and R4B of the fieldF1B.

The setting of a first point (530), the setting of the second point(540), and the defining of a path along the first point and the secondpoint (550), according to various embodiments, are examples ofconfiguring the auto-guidance system. According to various embodiments,the configuring of the auto-guidance system is performed solely with oneor more electromechanical switches.

At 560, the method ends.

Although specific operations are disclosed in flowchart 500, suchoperations are exemplary. That is, embodiments of the present inventionare well suited to performing various other operations or variations ofthe operations recited in flowchart 500. It is appreciated that theoperations in flowchart 500 may be performed in an order different thanpresented, and that not all of the operations in flowchart 500 may beperformed.

The operations 510-560 can be performed by one or more hardwareprocessors 251E.

The above illustration is only provided by way of example and not by wayof limitation. There are other ways of performing the method describedby flowchart 500.

The operations depicted in FIG. 5 can be implemented as computerreadable instructions, hardware or firmware. According to oneembodiment, a system, as depicted in FIGS. 2A-2D, can perform one ormore of the operations depicted in FIG. 5. According to one embodiment,one or more of the operations depicted in FIG. 5 may be performed byanother system. The other system can include hardware, such as a centralprocessing unit, for executing computer readable instructions.

Computer Readable Storage Medium

Unless otherwise specified, any one or more of the embodiments describedherein can be implemented using non-transitory computer readable storagemedium and computer readable instructions which reside, for example, incomputer-readable storage medium of a computer system or like device.The non-transitory computer readable storage medium can be any kind ofphysical memory that instructions can be stored on. Examples of thenon-transitory computer readable storage medium include but are notlimited to a disk, a compact disk (CD), a digital versatile device(DVD), read only memory (ROM), flash, and so on. As described above,certain processes and operations of various embodiments of the presentinvention are realized, in one embodiment, as a series of computerreadable instructions (e.g., software program) that reside withinnon-transitory computer readable storage memory of a computer system andare executed by the hardware processor, such as one or more hardwareprocessors 251D, of the computer system. When executed, the instructionscause a computer system to implement the functionality of variousembodiments of the present invention. For example, the instructions canbe executed by a central processing unit associated with the computersystem. According to one embodiment, the non-transitory computerreadable storage medium is tangible. The non-transitory computerreadable storage medium may be hardware memory 252D. The centralprocessing unit that executes the instructions may be hardware processor251D.

Unless otherwise specified, one or more of the various embodimentsdescribed in the context of FIGS. 1A-5 can be implemented as hardware,such as circuitry, firmware, or computer readable instructions that arestored on non-transitory computer readable storage medium. The computerreadable instructions of the various embodiments described in thecontext of FIGS. 1A-5 can be executed by one or more hardware processors251D, which may be a central processing unit, to cause a computer systemto implement the functionality of various embodiments. For example,according to one embodiment, the features 210D-240D (FIG. 2D) and theoperations of the flowcharts depicted in FIG. 5 are implemented withcomputer readable instructions that are stored on computer readablestorage medium that can be tangible or non-transitory or a combinationthereof.

CONCLUSION

Example embodiments of the subject matter are thus described. Althoughthe subject matter has been described in a language specific tostructural features and/or methodological acts, it is to be understoodthat the subject matter defined in the appended claims is notnecessarily limited to the specific features or acts described above.Rather, the specific features and acts described above are disclosed asexample forms of implementing the claims.

Various embodiments have been described in various combinations andillustrations. However, any two or more embodiments or features may becombined. Further, any embodiment or feature may be used separately fromany other embodiment or feature. Phrases, such as “an embodiment,” “oneembodiment,” among others, used herein, are not necessarily referring tothe same embodiment. Features, structures, or characteristics of anyembodiment may be combined in any suitable manner with one or more otherfeatures, structures, or characteristics.

1. A method of implementing auto-guidance, the method comprising:performing human interactions with an auto-guidance system of a mobilemachine solely with three or less electromechanical switches of theauto-guidance system without using a graphical user interface displaywhile the mobile machine is operating and moving from a first point to asecond point; in response to a first electromechanical switch input fromone of the three or less electromechanical switches while the mobilemachine is at the first point, setting by the auto-guidance system thefirst point for auto-guidance of the mobile machine; in response to asecond electromechanical switch input from one of the three or lesselectromechanical switches, after movement of the mobile machine fromthe first point to the second point, setting by the auto-guidance systemthe second point for auto-guidance of the mobile machine; activating, bythe auto-guidance system, auto-guidance of the mobile machine; andautomatically guiding, by the auto-guidance system, the mobile machinealong a path defined by the first point and the second point; whereinthe setting of the first point, the setting of the second point, and theactivating are performed by one or more hardware processors.
 2. Themethod as recited by claim 1, wherein the path is associated with afirst path of a field, and the method further comprising: deactivatingthe auto-guidance of the mobile machine with respect to the first pathof the field; and resuming the auto-guidance along a second path that isoffset at a fixed distance from and adjacent to the first path.
 3. Themethod as recited by claim 1, wherein the three or lesselectromechanical switches comprise a single electromechanical switch,and the method further comprising: receiving the first electromechanicalswitch input that is a first actuating of the single electromechanicalswitch; and receiving the second electromechanical switch input that isa second actuating of the single electromechanical switch.
 4. The methodas recited by claim 3, wherein the single electromechanical switch is afoot switch, and the method further comprising: receiving the firstelectromechanical switch input when the foot switch is in a firstposition, wherein the foot switch is located on a floor of the mobilemachine; and receiving the second electromechanical switch input whenthe foot switch is in a second position.
 5. The method as recited byclaim 3, wherein the single electromechanical switch is a hand switch,and the method further comprising: receiving the first electromechanicalswitch input when the hand switch is in a first position, wherein thehand switch is located on a steering wheel of the mobile machine; andreceiving the second electromechanical switch input when the hand switchis in a second position.
 6. The method as recited by claim 3, whereinthe single electromechanical switch is installed in a switch panel ofthe mobile machine, and the method further comprising: receiving thefirst electromechanical switch input from the single electromechanicalswitch installed in the switch panel; and receiving the secondelectromechanical switch input from the single electromechanical switchinstalled in the switch panel.
 7. The method as recited by claim 1,wherein the three or less electromechanical switches comprise a firstelectromechanical switch and a second electromechanical switch, and themethod further comprising: receiving the first electromechanical switchinput when the first electromechanical switch is actuated; and receivingthe second electromechanical switch input when the secondelectromechanical switch is actuated.
 8. The method as recited in claim1, further comprising: upon determining that a recorded variation in thepath from a straight path is within a predetermined threshold,automatically straightening the path.
 9. The method as recited by claim1, further comprising: recording information describing movement of themobile machine along the path for a first path of a field; andautomatically guiding the mobile machine, based on the recordedinformation, along a subsequent path that is adjacent to and offset at asubstantially fixed distance from the first path.
 10. The method asrecited by claim 9, wherein the path is a straight path, and the methodfurther comprising: recording information describing movement of themobile machine along the straight path, wherein the straight path is atleast a subset of the first path of the field.
 11. The method as recitedby claim 9, wherein the path is a non-straight path, and the methodfurther comprising: recording information describing movement of themobile machine along the non-straight path, wherein the second point islocated at an end of the first path of the field.
 12. A non-transitorycomputer readable storage medium having computer readable instructionsstored thereon for causing a computer system to perform a method ofimplementing auto-guidance, the method comprising: performing humaninteractions with an auto-guidance system of a mobile machine solelywith three or less electromechanical switches of the auto-guidancesystem without using a graphical user interface display while the mobilemachine is operating and moving from a first point to a second point; inresponse to a first electromechanical switch input from one of the threeor less electromechanical switches while the mobile machine is at thefirst point, setting by the auto-guidance system a first point forauto-guidance of the mobile machine; in response to a secondelectromechanical switch input from one of the three or lesselectromechanical switches after movement of the mobile machine from thefirst point to the second point, setting by the auto-guidance system thesecond point for auto-guidance of the mobile machine; activating, by theauto-guidance system, auto-guidance of the mobile machine; andautomatically guiding, by the auto-guidance system, the mobile machinealong a path defined by the first point and the second point; whereinthe setting of the first point, the setting of the second point, and theactivating are performed by one or more hardware processors.
 13. Thenon-transitory computer readable storage medium as recited by claim 12,wherein the path is associated with a first path of a field and whereinthe method further comprises: deactivating the auto-guidance for acurrent path of the field; re-activating the auto-guidance for asubsequent path of the field, wherein the current path and thesubsequent path are adjacent to each other; and repeating thedeactivating and the re-activating until all paths of the field havebeen operated on by the mobile machine, wherein all of the paths of thefield are offset at a substantially fixed distance from each other basedon the path.
 14. The non-transitory computer readable storage medium asrecited by claim 12, wherein the three or less electromechanicalswitches comprise a single electromechanical switch, and wherein themethod further comprises: receiving the first electromechanical switchinput that is a first actuating of the single electromechanical switch;and receiving the second electromechanical switch input that is a secondactuating of the single electromechanical switch.
 15. The non-transitorycomputer readable storage medium as recited by claim 12, wherein thethree or less electromechanical switches comprise a firstelectromechanical switch and a second electromechanical switch, andwherein method further comprises: receiving the first electromechanicalswitch input when the first electromechanical switch is actuated; andreceiving the second electromechanical switch input when the secondelectromechanical switch is actuated.
 16. The non-transitory computerreadable storage medium as recited by claim 12, wherein the methodfurther comprises: recording information describing movement of themobile machine along the path for a first path of a field; andautomatically guiding the mobile machine, based on the recordedinformation, along a subsequent path that is adjacent to and offset at asubstantially fixed distance from the first path.
 17. The non-transitorycomputer readable storage medium as recited by claim 16, wherein thepath is a straight path and wherein the method further comprises:recording information describing movement of the mobile machine alongthe straight path, wherein the straight path is at least a subset of thefirst path of the field.
 18. The non-transitory computer readablestorage medium as recited by claim 16, wherein the path is anon-straight path and wherein the method further comprises: recordinginformation describing movement of the mobile machine along thenon-straight path, wherein the second point is located at an end of thefirst path of the field.
 19. An autopilot operation system of a mobilemachine that does not require a graphical user interface display, theautopilot operation system comprising: hardware that includes a memoryand a processor; an auto-guidance system coupled to the hardware andconfigured to provide auto-guidance of the mobile machine; three or lesselectromechanical switches configured to receive a firstelectromechanical switch input and a second electromechanical switchinput while the mobile machine is operating and moving from a firstpoint to a second point, a plurality of logics stored in the memory andimplemented by the processor, wherein the plurality of logics includes:a first logic that, when implemented by the processor, causes theauto-guidance system to set the first point for auto-guidance of themobile machine in response to receiving the first electromechanicalswitch input while the mobile machine is at the first point; a secondlogic that, when implemented by the processor, causes the auto-guidancesystem to set the second point for auto-guidance of the mobile machinein response to receiving the second electromechanical switch input aftermovement of the mobile machine from the first point to the second point;a third logic that, when implemented by the processor, causes theauto-guidance system to define a path from the first point to the secondpoint; and a fourth logic that, when implemented by the processor,causes the auto-guidance system to activate the auto-guidance system soas to automatically guide the mobile machine along the path.
 20. Theautopilot operation system of claim 19, further comprising: atranslation-logic that, when implemented by the processor, translatesthe first electromechanical switch input and the secondelectromechanical switch input into CAN messages that are delivered tothe auto-guidance system over a CAN bus of the mobile machine.